package com.wlyuan.open.scanner.domain.order;

import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @author lijing
 * @description
 */
@Data
public class OrderGoods implements Serializable {

    private static final long serialVersionUID = 7527160966986823906L;
    @ApiModelProperty("订单id")
    private Long orderId;
    @ApiModelProperty("商品id")
    private Long goodsId;
    @ApiModelProperty("商品条码")
    private String materialCode;
    @ApiModelProperty("商品名称")
    private String goodsName;
    @ApiModelProperty("物品类型ID")
    private Long goodsTypeId;
    @ApiModelProperty("物品类型名称")
    private String goodsTypeName;
    @ApiModelProperty("物品单位")
    private String unit;
    @ApiModelProperty("物品规格")
    private String spec;
    @ApiModelProperty("物品重量")
    private BigDecimal weight;
    @ApiModelProperty("物品体积")
    private BigDecimal volume;
    @ApiModelProperty("物品价值")
    private BigDecimal value;
    @ApiModelProperty("批次号")
    private String batchNo;
    @ApiModelProperty("物品数量")
    private Integer quantity;
    @ApiModelProperty("物品备注")
    private String desc;

    @ApiModelProperty("创建人")
    private Long createAt;
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;
    @ApiModelProperty("修改人")
    private Long updateAt;
    @ApiModelProperty("修改时间")
    private LocalDateTime updateTime;
    @ApiModelProperty("价格单位")
    private Long priceUnit;

    @ApiModelProperty("签收信息")
    private OrderSign goodsSign;
    @ApiModelProperty("回单信息")
    private OrderReceipt goodsReceipt;


    private Long id;


    @ApiModelProperty("是否失效")
    private Integer invalid;

    @ApiModelProperty("备注")
    private String comments;

    @ApiModelProperty("单价")
    private BigDecimal price;

    @ApiModelProperty("无税单价")
    private BigDecimal notAxUnitPrice;

    @ApiModelProperty("无税总价")
    private BigDecimal notAxPrice;

    @ApiModelProperty("包税单价")
    private BigDecimal taxPrice;

    @ApiModelProperty("包税总价")
    private BigDecimal totalPrice;

    @ApiModelProperty("异常数量")
    private BigDecimal exceptionQtyTemp;

    @ApiModelProperty("异常类型 ")
    private Long exceptionType;

    @ApiModelProperty("回单复查异常类型")
    private Long exceptionTypeV;

    @ApiModelProperty("下单物品排序")
    private Integer noId;

    @ApiModelProperty("拒签批号(奇正藏药)")
    private String refusedNo;

    @ApiModelProperty("行项目折扣（未税）")
    private BigDecimal kbetrWs;

    @ApiModelProperty("行项目折扣（税）")
    private BigDecimal mwsbpZk;

    @ApiModelProperty("行项目税额")
    private BigDecimal mwsbp;

    @ApiModelProperty("行项目折扣 top")
    private BigDecimal kbetr;

    @ApiModelProperty("异常-异常描述")
    private String exceptionDesc;

    @ApiModelProperty("异常标签 0 无   1 回单异常  2 签收异常")
    private Integer exceptionTag;

    @ApiModelProperty("物品编码(冗余)")
    private String code;

    @ApiModelProperty("单个物品价格")
    private Double singlePrice;

    @ApiModelProperty("单个物品重量")
    private Double singleWeight;

    @ApiModelProperty("单个物品体积")
    private Double singleVolume;

    @ApiModelProperty("仓库")
    private String factoryNo;

    @ApiModelProperty("客户通过下单时填写的信息，物流源只存储，暂不做业务逻辑处理")
    private JSONObject echo;

    private String extendDoc;

    private Integer optStatus;

    private String chineseName;
}
